package com.ww.springboot.boot.netty.bio;

import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;


/**
 * BIO:一个线程 一个连接
 * 如果BIO下建立大量连接却不消费 则会在服务器端保留大量无效连接 十分影响性能  因此需要采用NIO
 */
public class Server2 {
    public static void main(String[] args) {
        byte[] buffer = new byte[1024];
        try {
            ServerSocket serverSocket = new ServerSocket(8080);
            System.out.println("服务器已启动并监听8080端口");
            while (true) {
                System.out.println();
                System.out.println("服务器正在等待连接...");
                Socket socket = serverSocket.accept();
                new Thread(new Runnable() {
                    @Override
                    public void run() {
                        System.out.println("服务器已接收到连接请求...");
                        System.out.println();
                        System.out.println("服务器正在等待数据...");
                        try {
                            socket.getInputStream().read(buffer);
                            System.out.println("服务器已经接收到数据");
                            System.out.println();
                            String content = new String(buffer);
                            System.out.println("接收到的数据:" + content);
                        } catch (IOException e) {
                            // TODO Auto-generated catch block
                            e.printStackTrace();
                        }
                    }
                }).start();

            }
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}
